#if _MSC_VER
 #pragma once
#endif // _MSC_VER

#ifndef __HERZELEID_BASICSOUNDEFFECT_INCLUDED___
 #define __HERZELEID_BASICSOUNDEFFECT_INCLUDED___
 #include "HerzeleidMedia.hxx"

HerzeleidMediaNamespaceBegin struct BasicSoundEffect
{
	typedef IXAudio2SourceVoice SourceVoice; TinyTypeDecl( SourceVoice );
	typedef XAUDIO2_BUFFER AudioBuffer; TinyTypeDecl( AudioBuffer );

	SourceVoicePtr SoundEffectSourceVoice;
	AudioBuffer SoundEffectBufferDesc;
	BytePtr SoundEffectBufferData;
	UInt32 SoundEffectBufferLength;
	UInt32 SoundEffectSampleRate;
	Bool SoundEffectStarted;

	BasicSoundEffect();

} HerzeleidMediaNamespaceEnd;

HerzeleidMediaNamespaceBegin
	TinyTypeDecl( BasicSoundEffect );
HerzeleidMediaNamespaceEnd;

#endif // !__HERZELEID_BASICSOUNDEFFECT_INCLUDED___